.q-form-item {
  position: relative;

  &__header {
    position: relative;
    z-index: 1;
    display: flex;
    align-items: baseline;
    margin-bottom: 8px;
  }

  &__label {
    font-size: var(--font-size-base);
    font-weight: var(--font-weight-base);
    line-height: 18px;
    color: var(--color-primary-black);

    .q-form-item_is-required:not(.q-form-item_is-no-asterisk) &::after {
      margin-left: 4px;
      color: var(--color-secondary-orange);
      content: '*';
    }
  }

  &__sublabel {
    margin-left: auto;
    font-size: 10px;
    line-height: 12px;
    color: rgba(var(--color-rgb-gray), 0.64);
  }

  &__body {
    position: relative;
    padding-bottom: 24px;
  }

  &__error {
    position: absolute;
    top: calc(100% - 16px);
    right: 0;
    left: 0;
    font-size: 10px;
    line-height: 12px;
    color: var(--color-secondary-orange);
  }
}
